home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
et
/
et3_0-a1.lha
/
et3
/
src
/
Window.h
< prev
next >
Wrap
C/C++ Source or Header
|
1992-07-16
|
2KB
|
88 lines
#ifndef Window_First
#ifdef __GNUG__
//pragma once
#pragma interface
#endif
#define Window_First
#include "Clipper.h"
#include "WindowSystem.h"
class Manager;
class WindowPort;
class Menu;
extern Token gToken;
extern Window *gWindow;
//---- Window ------------------------------------------------------------------
class Window: public Clipper {
protected:
bool active;
GrCursor cursor;
WindowPort *portDesc; // Port descriptor
Manager *manager;
Window *icon;
VObject *inner;
WindowType wtype;
WindowFlags wflags;
void Init(Manager *eh, VObject *in, WindowType wt, GrCursor curs,
WindowFlags f, char *t, Point e);
WindowPort *MakePort();
public:
MetaDef(Window);
Window(Manager*, Point e, WindowFlags f, VObject*, char *title= "");
Window(Manager*, VObject *contents, WindowType wt, WindowFlags f,
Point e= gPoint_1, char *t= "");
~Window();
bool IsActive()
{ return active; }
EvtHandler *GetNextHandler();
void SetNextManager(Manager*);
Command *DoMenuCommand(int);
void InputNotify(Token *t);
void FocusNotify(bool f);
void OpenNotify(Point e);
void CloseNotify();
void ResizeNotify(Point e);
void SetOrigin(Point at);
void SetExtent(Point e);
void ExtentChanged(VObject *what);
void Focus();
void InvalidateRect(Rectangle);
void PushBackEvent(Token);
void Open(bool mode= TRUE);
void OpenAt(Point p, VObject *vf= 0, bool resize= FALSE, bool block= FALSE);
void Iconize();
GrCursor GetCursor(Point);
Window *MakeIcon();
Window *GetIcon()
{ return icon; }
Port *GetPortDesc()
{ return (Port*)portDesc; }
void SetPortDesc(Port *newport)
{ portDesc= (WindowPort*)newport; }
Rectangle ScreenRect();
Rectangle GetRect();
void ReadEvent(Token &t, int timeout= -1, bool overread= TRUE);
void Bell(long d= 100);
void SetMousePos(Point);
void Grab(bool on, bool fullscreen);
void Top();
void Bottom();
void SetTitle(char*);
};
#endif